package com.res.service;

import java.util.List;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.res.entity.Register;

public interface RegisterService {

	/**
	 * 登记表模糊查询
	 * @param pageable
	 * @param stuname 学生名称
	 * @param tname 老师名称
	 * @param sid 系别id
	 * @param did 科室id
	 * @return
	 */
	 Page<Register> getAllRegister(Pageable pageable,String stuname,String tname,Integer sid,Integer did,String maxTime,String minTime);
		
	/**
	 * 添加记录
	 * @param r 登记实体
	 * @return
	 */
	 String addR(Register r);
	 
	 /**
	  * 修改登记记录信息
	  * @param r 
	  * @return
	  */
	 String update(Register r);
	 
	 /**
	  * 通过id删除
	  * @param rid
	  * @return
	  */
	 String deleteR(Integer rid);
	 
	 /**
	  * 判断老师或学生当前状态 是否已在线
	  * @param stuid
	  * @param tid
	  * @return
	  */
	 Register getRegisterById(Integer stuid,Integer tid);
	 
	/* * 计算某台电脑使用的次数,因为结果可能返回多条数据，所以就用list集合
	 */

	List<Integer>num();
	/**
	 * 查询统计表的所有数据根据下面这个sql查询
	 * 用这个原生sql的原因就是等会在StaticController里面判断使用
	 * 因为StaticController中的count也是这个语句查的 这样不会出现下标越界的情况
	 * 用s.*就是为了得到static表中的所有数据，不然等会StaticController判断可能会有问题
	 * @return
	 */
	
	List<Register> all();
}
